package com.abner.design.patterns.builder.improve;

/**
 * 抽象房子建造者(抽象建造者)
 * @Author: abner
 * @Date: 2022-05-03-14:13
 **/
public abstract class HouseBuilder {

    protected House house = new House();

    /**
     * 打地基
     */
    public abstract void buildBasic();

    /**
     * 砌墙
     */
    public abstract void buildWalls();

    /**
     * 封顶
     */
    public abstract void roofed();

    /**
     * 构建房子
     * @return
     */
    public House buildHouse() {
        return house;
    }
}
